Edge device

ABSTRACT

Methods, systems, and devices associated with an edge device are described. An edge device can include a processing resource and a memory resource having instructions executable to receive, at the processing resource, the memory resource, or both, and from a first source comprising a device in communication with the edge device, first input associated with a user of the device. The instructions can be executable to receive, from a second source, second input associated with a user of the device, determine, based on the first input and the second input, operational instructions for the device and transmit the operational instructions to the device. The instructions can be executable to update, using a machine learning model, the operational instructions responsive to receiving an indication of performance of the operational instructions by the device and responsive to third input received from the first source, the second source, or both.

PRIORITY INFORMATION

This application is a Continuation of U.S. application Ser. No.17/225,204, filed on Apr. 8, 2021, the contents of which areincorporated herein by reference.

TECHNICAL FIELD

The present disclosure relates generally to apparatuses, systems, andmethods associated with an edge device.

BACKGROUND

A computing device is a mechanical or electrical device that transmitsor modifies energy to perform or assist in the performance of humantasks. Examples include thin clients, personal computers, printingdevices, laptops, mobile devices (e.g., e-readers, tablets, smartphones,etc.), internet-of-things (IoT) enabled devices, and gaming consoles,among others. An IoT enabled device can refer to a device embedded withelectronics, software, sensors, actuators, and/or network connectivitywhich enable such devices to connect to a network and/or exchange data.Examples of IoT enabled devices include mobile phones, smartphones,tablets, phablets, computing devices, implantable devices, vehicles,home appliances, smart home devices, monitoring devices, wearabledevices, devices enabling intelligent shopping systems, among othercyber-physical systems.

A computing device can be used to transmit information to users via adisplay to view images and/or text, speakers to emit sound, and/or asensor to collect data. A computing device can receive inputs fromsensors on or coupled to the computing device. The computing device canbe coupled to a number of other computing devices and can be configuredto communicate (e.g., send and/or receive data) with the other computingdevices and/or to a user of the computing device.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a diagram representing a system including a device and an edgedevice in accordance with a number of embodiments of the presentdisclosure.

FIG. 2 is a diagram including an edge device and a device incommunication with a sensor in accordance with a number of embodimentsof the present disclosure.

FIG. 3 is a functional diagram representing a processing resource incommunication with a memory resource having instructions written thereonin accordance with a number of embodiments of the present disclosure.

FIG. 4 is a flow diagram representing an example method associated withan edge device in accordance with a number of embodiments of the presentdisclosure.

FIGS. 5A and 5B are flow diagrams representing an example methodassociated with an edge device in accordance with a number ofembodiments of the present disclosure.

DETAILED DESCRIPTION

Apparatuses, systems, and methods associated with an edge device aredescribed. An edge device as used herein includes a device (e.g.,physical device) used for communication and interaction between deviceson a network. Edge devices can mediate data in a network. Example edgedevices include switching devices (also known as “switches”), routers,router/switching device combinations, models, access points, gateways,networking cables, network interface controllers, and hubs, amongothers. In some instances, an edge device can be or can include acontroller. An edge device, in some examples of the present disclosure,can be a combination of hardware and instructions for determining andtransmitting operational instructions to a device that is part of thesame network as the edge device. The hardware, for example can includeprocessing resource and/or a memory resource (e.g., MRM,computer-readable medium (CRM), buffer memory resource, data store,etc.).

Examples of the present disclosure provide a smart edge device that actsas a communication hub between a device and other computing devices,cloud storage, web interfaces, etc., while collecting, storing, andcommunicating data associated with the device and/or a user of thedevice. An edge device according to examples of the present disclosurecan determine and update operational instructions for the device, forinstance using a machine learning model.

Examples of the present disclosure can include an edge device comprisinga processing resource and a memory resource in communication with theprocessing resource having instructions executable to receive, at theprocessing resource, the memory resource, or both, and from a firstsource comprising a device in communication with the edge device, firstinput associated with a user of the device. The instructions can beexecutable to receive, from a second source, second input associatedwith a user of the device, determine, based on the first input and thesecond input, operational instructions for the device and transmit theoperational instructions to the device. The instructions, in someexamples, can be executable to update, using a machine learning model,the operational instructions responsive to receiving an indication ofperformance of the operational instructions by the device and responsiveto third input received from the first source, the second source, orboth.

In the following detailed description of the present disclosure,reference is made to the accompanying drawings that form a part hereof,and in which is shown by way of illustration how one or more embodimentsof the disclosure can be practiced. These embodiments are described insufficient detail to enable those of ordinary skill in the art topractice the embodiments of this disclosure, and it is to be understoodthat other embodiments can be utilized and that process, electrical, andstructural changes can be made without departing from the scope of thepresent disclosure.

It is also to be understood that the terminology used herein is for thepurpose of describing particular embodiments only and is not intended tobe limiting. As used herein, the singular forms “a,” “an,” and “the” caninclude both singular and plural referents, unless the context clearlydictates otherwise. In addition, “a number of,” “at least one,” and “oneor more” (e.g., a number of memory devices) can refer to one or morememory devices, whereas a “plurality of” is intended to refer to morethan one of such things. Furthermore, the words “can” and “may” are usedthroughout this application in a permissive sense (i.e., having thepotential to, being able to), not in a mandatory sense (i.e., must). Theterm “include,” and derivations thereof, means “including, but notlimited to.” The terms “coupled,” and “coupling” mean to be directly orindirectly connected physically or for access to and movement(transmission) of commands and/or data, as appropriate to the context.

The figures herein follow a numbering convention in which the firstdigit or digits correspond to the figure number and the remaining digitsidentify an element or component in the figure. Similar elements orcomponents between different figures can be identified by the use ofsimilar digits. For example, 100 can reference element “00” in FIG. 1,and a similar element can be referenced as 200 in FIG. 2. As will beappreciated, elements shown in the various embodiments herein can beadded, exchanged, and/or eliminated so as to provide a number ofadditional embodiments of the present disclosure. In addition, theproportion and/or the relative scale of the elements provided in thefigures are intended to illustrate certain embodiments of the presentdisclosure and should not be taken in a limiting sense.

FIG. 1 is a diagram representing a system including a device 102 and anedge device 100 in accordance with a number of embodiments of thepresent disclosure. FIG. 1 illustrates a device 102 in communicationwith an edge device 100. While one device 102 and one edge device 100are illustrated in FIG. 1, more that one device 102 may be incommunication with the edge device 100 and/or more than one edge device100 may be in communication with the device 102.

The device 102 can include, for instance, a device that performs a task(e.g., brushing teeth, cleaning, cooking, etc.) and communicates withthe edge device 100. For instance, the device 102 may include anelectronic toothbrush, a cleaning device, a cooking or baking appliance,etc. The edge device 100 may or may not be linked to a separate device(e.g., personal computing device, smartphone, tablet, etc.) to enablecommunications. In some examples, the device 102 may communicate withthe edge device 100 via a two-way communication path comprising adevice-to-device data link or a data link with a base station or accesspoint. The device 102 can include components of the device 102 (e.g.,brushing bristles, cleaning bristles, appliance components, etc.) and amemory resource for temporary storage (e.g., a buffer memory resource).

The device 102, in some examples, may be in communication with a sensoror sensors (not illustrated in FIG. 1). For example, a memory resourceof the device 102 may be in communication with the sensor or sensors.Example sensors may include health sensors (e.g., biometric sensor suchas a heart monitor, blood glucose monitor, kidney function monitor, lungfunction monitor, oxygen monitor, etc.), temperature sensors (e.g., bodytemperature, ambient temperature, etc.), location sensors (e.g., GPS orother location monitor), image sensors, or battery sensors, amongothers. In some examples, the device 102 may include an ultrasonicsensor to enable visual mapping of an item or user associated with thedevice 102. For instance, in an example where the device 102 is atoothbrush, the ultrasonic sensor may enable visual mapping of a mouthfor detection of gum disease or other gum issues, mouth sores, toothdecay, etc. The ultrasonic sensor may allow for tracking of process of amouth care regimen, overall oral health, and/or monitoring of safety ofa user.

The device 102 may also include a timer, clock, camera, microphone,speaker, battery, or other hardware. In some examples, the sensorsand/or other hardware may be configurable at the device 102 or via theedge device 100. For instance, an authorized user may configure a sensorto alert the edge device 100, the device 102, or both, when a thresholdevent is detected (e.g., threshold gum recession, threshold plaqueamount, burned food, low battery, empty cleaning fluid reservoir, etc.).The configuration can be performed via the edge device 100, the device102, or both. In some examples, an additional edge device may beutilized for configuration. For instance, an authorized user mayconfigure a threshold event via an application downloaded on a mobiledevice (e.g., a dentist sets a threshold gum recession).

At 104, the edge device 100 can receive input (e.g., to hardware such asa processing resource, memory resource, or both) as initial data 110.For instance, the edge device 100 may receive information associatedwith the user such as identifying information and/or informationassociated with the user as it relates to the device 102. For instance,if the device 102 is a toothbrush, the input 104 may include the user'sbrushing habits, oral needs, etc. In some examples, this information maycome from a source other than the user. For example, in the toothbrushexample, a dentist may be able to communicate with the edge device 100(e.g., via a mobile device application, web browser, etc.) to entersuggested brushing habits or oral health history. The edge device 100,in some instances, may receive input via an image sensor including auser's response to the device (e.g., response to brushing) or userfeedback, among other inputs.

The input 104 can also include information such as particular settingsdesired for the device 102 or other instructions specific to the user ofthe device 102 or the device. For instance, the input 104 can includecleaning and/or timer settings for a cleaning device or settingsassociated with developmental needs of a user of the device 102. Theinput 104 can be manually input, for instance via an application on amobile device or web browser. The input 104 can be received at the edgedevice 100, in some examples, periodically or on-demand from the cloudstorage 108.

The edge device 100 can include instructions associated with the device102 (e.g., cleaning instructions/programs, brushinginstructions/programs, etc.), a timer and/or other hardware, aprocessing resource, a memory resource, and/or a controller such as amicrocontroller. The processing resource, the memory resource, or bothmay be part of the controller or separate from the controller. In someexamples, the edge device 100 can utilize artificial intelligence (AI)and associated machine learning models to determine and updateoperational instructions associated with performance of the device 102.AI, as used herein, includes a controller, computing device, or othersystem to perform a task that normally requires human intelligence. Forinstance, the controller, processing device, memory device or anycombination thereof can perform a task (e.g., determining operationalinstructions for a device) that normally requires human intelligence. Insome examples, the edge device 100 can act as a local source ofprocessing and storage for the device 102 while sending data to cloudstorage 108 or back to the device 102.

The device 102 and the edge device 114 can output data to the cloud 108for storage, or to another computing device or computing devices forfurther use and/or analysis. For instance, upon completion ofoperational instructions by the device 102, the device 102 may transmitoutput to the edge device 100, which may transmit the results, includingpredictive and prescriptive data at 112 to an authorized computingdevice at 106 such as a user's mobile device, an authorized user'smobile device, and/or an authorized web platform, among others. Thedevice 102, the edge device 100, or both, may transmit the data to cloudstorage 108, in some examples. In some instances, data may betransmitted from the cloud storage 108 to an authorized computing deviceat 106 such as a user's mobile device, an authorized user's mobiledevice, and/or an authorized web platform, among others as initialinputs and raw data for reports and safety alerts, for instance at 114.

For instance, in the brushing example, the edge device 100 transmitsoperational instructions to the device 102 at 116. Upon completion of abrushing session by the device 102, the edge device 100 may receivesensor data and/or other data from the device 102 at 118. The edgedevice 100 can transmit this data to the authorized computing device at106 and/or the brushing device 102 may output data, in some examples.The authorized computing device may include, for instance, a computingdevice monitored by a user's dental office, the user's mobile device, oran emergency contact's mobile device, among others. Output may betransmitted to a plurality of authorized computing devices, in someexamples.

Example outputs at 106 can include a message or alert sent with respectto a threshold event and dependent on the device 102 (e.g., completedoperational instructions, detected gum disease, low battery, thresholddirt amount, broken appliance, etc.). Example outputs at 106 may be inthe form of emails, text messages, alerts via an application, etc.

Other example outputs include image data such as photographs or videoand audio data. For instance, the device 102 may include a camera thatcaptures image data such as images of teeth, items or locations to becleaned, food, or other items associated with the device 102. In someexamples, a user of the device 102 can indicate he or she needs help(e.g., by pushing a button on the device 102). This indication may betransmitted as output by the device 102, the edge device 100, or both.

In some examples, the output 106 can include a notification with respectto the edge device 100, the device 102 or a sensor associated with thedevice 102. For instance, the edge device 100 and/or an authorizedcomputing device may be notified (e.g., message, audible alert, visualalert, etc.) when a battery level of the device 102 or an associatedsensor falls below a threshold, or if the device 102 has been left on acharger for greater than a threshold time period, which may indicate theuser has failed to use the device 102.

FIG. 2 is a diagram including an edge device 200 and a device 202 incommunication with a sensor 224 in accordance with a number ofembodiments of the present disclosure. The example illustrated in FIG. 2can include a system comprising the device 202 in communication with thesensor 224 and also in communication with the edge device 200. While oneedge device 200, one device 202, and one sensor 224 are illustrated inFIG. 2, more of each component may be present as a part of the system.

The device 202 can include a processing resource 220 and a memoryresource 220 in communication with the processing resource 222. In someexamples, the memory resource 220 may include, at least in part, abuffer memory resource. The memory resource 220, can include, forinstance, non-volatile memory comprising phase-change memory orresistive random-access memory (RAM) or a double data rate synchronousdynamic RAM (DDR SDRAM) memory resource, among others.

The sensor 224 can be in communication with the processing resource 220,the memory resource 222, or both, and can be configured to detect dataassociated with a user of the device 202 or an apparatus monitored bythe device 202 and write the data to the memory resource 222. Forinstance, the memory resource 222 may temporarily store data detected atthe sensor 224 until it can be transmitted to the edge device 200.

In a non-limiting example, the processing resource 220 of the device 202can receive input in the form of signaling from the sensor 224 (e.g.,from a processing resource of the sensor). For instance, the sensor 224may detect that a user of the device 202 has been using the device forlonger than expected (e.g., using a brushing device for 5 hours). Theprocessing resource 220, the memory resource 222, or both, of the device202 can receive this signaling and transmit associated data to the edgedevice 200.

The device 202 can include other elements including, but not limited toa timer device, a camera for capturing image data (e.g., still and/orvideo), and other components for operation of the device 202. In someexamples, the timer device may track operation of the device 202 (e.g.,track brushing time, track cleaning time, track cooking time, etc.dependent on a type of device 202).

The system can include an edge device 200 in communication with thedevice 202. The edge device 200 may determine operational instructionsassociated with the device 202. For instance, in an example where thedevice 202 is a cooking appliance, the edge device 200 may determine thedevice 202 should cook a particular food item for 10 minutes at 350degrees. The edge device 200 can include a microcontroller 226 that caninclude a phase-change memory or resistive random-access memory (RAM)memory resource that may be part of or separate from the microcontroller226. The microcontroller 226, in some examples is a small computingdevice on a single metal-oxide-semiconductor integrated circuit chip.The microcontroller 226 can include one or more processing resources, amemory resource, and programmable input/output peripherals.

In some examples, the microcontroller 226 is configured to receive firstinput from the processing resource 220, the memory resource 222, orboth, including the data detected at the sensor 224. For instance, inthe cooking appliance example, the sensor 224 may detect that food beingcooked by the device 202 is burning (e.g., smoke about a thresholdamount), and this can be received at the edge device 200 as the firstinput. Other first input may include, for instance, status updates ofthe device (e.g., replace battery, underperforming component, etc.).

The microcontroller 226 can be configured to receive second input from aplurality of sources and determine, based on the first and the secondinput, operational instructions for the device 202. The second input,for instance, can include input receive from an authorized computingdevice or cloud storage such as user identification, user habits and/orpreferences, manufacturer data, default settings, etc. Based on thesecond input, the microcontroller 226 can determine the operationalinstructions. For instance, in the cooking appliance example, themicrocontroller 226 may receive first input that a previous operation ofthe device 202 resulted in burned food, while second input received atthe microcontroller 226 indicated that the user prefers lightly cookedfood. As a result, the microcontroller 226 can determine that thetemperature and/or cooking time of the device 202 should be reduced.

The microcontroller 226 can be configured to transmit (e.g., via aradio) the operational instructions to the device 202 and update, usinga machine learning model, the operational instructions responsive tothird input received from the device, one or more of the plurality ofsources, or both. For instance, in the cooking appliance example, uponcompletion of the cooking, the microcontroller 226 may receive thirdinput from the device 202 that the food was undercooked. Using a machinelearning model, the operational instructions may be updated. Other thirdinput in the cooking appliance example may include updated input from auser regarding cooking preferences, or input from a caregiver indicatinglimits to use of the device 202. The machine learning model can beupdated each time new data is received at the microcontroller or themachine learning model can be updated periodically (e.g., updated onceper day).

In some examples, the device 202 can be configured to transmit a resultof completion of the operational instructions to the edge device 200,and the microcontroller 226 can be configured to transmit the result tocloud storage, an authorized computing device, or both. For instance, inthe cooking appliance example, the undercooked result may be transmittedto the edge device 200, and subsequently to the cloud storage and/orauthorized computing device. The edge device 200 can access the cloudstorage and retrieve the undercooked data for future reference and/or tofurther update the machine learning model. An authorized computingdevice, such as a caregiver's computing device or a user's mobiledevice, may be alerted in case the caregiver wants to communicate withthe user or the user has chosen (e.g., via an application) to bealerted, for instance.

In some examples, the processing resource 220, the memory resource 222,or both, can periodically share data associated with the user of thedevice 202 or the apparatus monitored by the device 202 with themicrocontroller 226. For instance, the device 202 may share data as itis performing operational instructions, before it performs operationalinstructions, and/or after it performs operational instructions. Thedevice 202 may also share data at particular time intervals, forinstance twice per day, in real-time (e.g., as data is available toshare with the edge device 200, or near-continuously (e.g., withoutmeaningful breaks). The microcontroller 225 can transmit an alertassociated with the shared data to an authorized computing device, insome examples. For instance, if the shared data includes an alert thatthe device 202 or the sensor 224 has a low battery, an alert can betransmitted to the authorized computing device, such as a user's mobiledevice or an emergency contact's mobile device or computing device.

In some examples, the system may include an additional edge device (notillustrated in FIG. 2) configured to facilitate transmission of thefirst input, the second input, the operational instructions, the updatedmachine learning model, or any combination thereof to cloud storage. Forinstance, the additional edge device may include a computing device suchas a mobile device. In such an example, the edge device 200 may transmitthe first input, the second input, the operational instructions, theupdated machine learning model, or any combination thereof to theadditional edge device, which may transmit the second input, theoperational instructions, the updated machine learning model, or anycombination thereof to cloud storage. In such an example, the edgedevice 200 may include a buffer memory device for temporary storage ofdata received from the device 202.

The additional edge device, in some instances, may enable dataclassification associated with the device 202 and the edge device 200and can facilitate habit clustering and supervised learning of themachine learning model. For instance, the user or another authorizeduser may monitor the user's habits and the machine learning model via amobile device application updated with data from cloud storage and/orthe edge device 200. Similar, the additional edge device can facilitateviewing of charts, graphs, and other images to aid in decision-making bycaregivers, health care providers, parents, etc., can provide reminders(e.g., remind to brush, remind to replace component of the device 202,etc.), and can store a history of the user's habits and other userinformation obtained from the sensor 224.

FIG. 3 is a functional diagram representing a processing resource 330 incommunication with a memory resource 332 having instructions 334, 336,338, 340, 342 written thereon in accordance with a number of embodimentsof the present disclosure. In some examples, the processing resource 330and the memory resource 332 comprise an edge device 300 such as the edgedevices 100, 200 illustrated in FIGS. 1 and 2, respectively. In someexamples, the processing resource 330 and the memory resource 332comprise a microcontroller such as the microcontroller 226 illustratedin FIG. 2.

The system or device 300 illustrated in FIG. 3 can be a server or acomputing device (among others) and can include the processing resource330. The system or device 300 can further include the memory resource332 (e.g., a non-transitory MRM), on which may be stored instructions,such as instructions 334, 336, 338, 340, 342. Although the followingdescriptions refer to a processing resource and a memory resource, thedescriptions may also apply to a system with multiple processingresources and multiple memory resources. In such examples, theinstructions may be distributed (e.g., stored) across multiple memoryresources and the instructions may be distributed (e.g., executed by)across multiple processing resources.

The memory resource 332 may be electronic, magnetic, optical, or otherphysical storage device that stores executable instructions. Thus, thememory resource 332 may be, for example, non-volatile or volatilememory. For example, non-volatile memory can provide persistent data byretaining written data when not powered, and non-volatile memory typescan include NAND flash memory, NOR flash memory, read only memory (ROM),Electrically Erasable Programmable ROM (EEPROM), Erasable ProgrammableROM (EPROM), and Storage Class Memory (SCM) that can include resistancevariable memory, such as phase change random access memory (PCRAM),three-dimensional cross-point memory, resistive random access memory(RRAM), ferroelectric random access memory (FeRAM), magnetoresistiverandom access memory (MRAM), and programmable conductive memory, amongother types of memory. Volatile memory can require power to maintain itsdata and can include random-access memory (RAM), dynamic random-accessmemory (DRAM), and static random-access memory (SRAM), among others.

In some examples, the memory resource 332 is a non-transitory MRMcomprising Random Access Memory (RAM), an Electrically-ErasableProgrammable ROM (EEPROM), a storage drive, an optical disc, and thelike. The memory resource 332 may be disposed within a controller (e.g.,microcontroller) and/or computing device. In this example, theexecutable instructions 334, 336, 338, 340, 342 can be “installed” onthe device. Additionally, and/or alternatively, the memory resource 332can be a portable, external or remote storage medium, for example, thatallows the system to download the instructions 334, 336, 338, 340, 342from the portable/external/remote storage medium. In this situation, theexecutable instructions may be part of an “installation package”. Asdescribed herein, the memory resource 332 can be encoded with executableinstructions associated with an edge device.

The instructions 334, when executed by a processing resource such as theprocessing resource 330 can include instructions to receive, at theprocessing resource, the memory resource, or both, and from a firstsource comprising a device in communication with the edge device 300,first input associated with a user of the device. For instance, thefirst input can include prior or current use of the device, signalingreceived from a sensor in communication with the device, image dataassociated with the user, etc.

In a non-limiting example, the edge device 300 may be a docking stationfor a toothbrush, which can be the device in communication with the edgedevice 300. The device can be docked to the edge device 300, and whiledocked, the device can have its battery charged and share data with theedge device 300. The device and the edge device 300 can share datathrough a wired connection or can share data wirelessly. In someexamples, the device need not be in physical contact with the edgedevice 300 for the device and the edge device 300 to share data. Theedge device 300 can receive as the first input data associated with auser of the toothbrush such as plaque levels, gum disease progression,image data associated with teeth and guns, length of brushing time,battery life of toothbrush, etc. The toothbrush can include a sensor,sensors, a camera, and/or can be in communication with a sensor,sensors, a camera to gather the data.

The instructions 336, when executed by a processing resource such as theprocessing resource 330, can include instructions to receive, from asecond source, second input associated with a user of the device. Thesecond source can include an authorized user device such as a personalcomputing device or mobile device. The second source, in some instances,can include cloud storage. The second input can include, for instancedata associated with a user of the device, manufacturer information, orinstructions from a third party, among others.

For instance, in the edge device 300 as a docking station example, theedge device 300 may receive the second input from a dental office (e.g.,via a web platform or mobile device application) including treatmentplans, brushing suggestions, dental health concerns, goals, etc. Theedge device 300 may receive the second input, from the user of thetoothbrush (e.g., via a web platform or mobile device application)including, for instance, identifying information, brushing habits, priorhealth conditions, etc. Other sources may include other authorized userssuch as healthcare providers, caretakers, parents, etc.

The instructions 338, when executed by a processing resource such as theprocessing resource 330, can include instructions to determine, based onthe first input and the second input, operational instructions for thedevice. For instance, using data received as the first and the secondinputs, the edge device 300 can determine settings and thresholds forthe device to result in desired outcomes. For instance, in the edgedevice 300 as a docking station example, the edge device 300 maydetermine a pressure at which the device should brush, a length of timefor which the device should brush, an amount and/or type of toothpasteto be distributed, etc.

The instructions 340, when executed by a processing resource such as theprocessing resource 330, can include instructions to transmit (e.g., viaa radio) the operational instructions to the device. For instance, inthe previous example, the edge device 300 may transmit pressures andtime limits for brushing to the device.

The instructions 342, when executed by a processing resource such as theprocessing resource 330, can include instructions to update, using amachine learning model, the operational instructions responsive toreceiving an indication of performance of the operational instructionsby the device and third input received from the first source, the secondsource, or both. For instance, new or updated input from any or all ofthe sources can be saved in the memory resource 332 or cloud storage,and the machine learning model can self-learn to update and improveaccuracy and efficiency of the operational instructions.

In some examples, the memory resource 332 can include instructionsexecutable to transmit the operational instructions to cloud storage.For instance, the memory resource 332 may be a buffer memory resourceconfigured to temporarily store data such that the operationalinstructions and/or other data are transmitted to cloud storage and maybe accessed as needed by the edge device 300.

The memory resource 332 can include instructions executable to instructhardware of the edge device 300 to perform a physical task associatedwith the operational instructions, in some examples. For instance, theoperational instructions may include the edge device 300 preparing thedevice for completion a task. In the edge device 300 as a dockingstation example, the edge device 300 may store toothpaste and dispensethe toothpaste onto the device (e.g., toothbrush) as indicated by theoperational instructions.

In some examples, the memory resource 332 can include instructionsexecutable to track a status of the device before transmission of theoperational instructions to the device and in response to receiving theindication of performance of the operational instructions by the device.For example, the edge device 300 can receive a current status from thedevice before the device begins its task, while it performs the task,after it performs the task, or any combination thereof. In the previousexample, the edge device 300 may receive status updates from thetoothbrush regarding battery life, condition of brush heads, conditionof other toothbrush hardware (e.g., water sprayer, toothpaste holder,etc.), toothbrush buffer memory status, etc.

In some examples, the memory resource 332 can include instructionsexecutable to assess hardware of the edge device 300 and transmit aresult of the assessment to an authorized computing device. Forinstance, the edge device 300 may be due for scheduled maintenance orhave an underperforming hardware component. For instance, in the edgedevice 300 as a docking station example, a reservoir for toothpastestorage made need refilling or a battery may need replacement. Thisinformation can be transmitted to the authorized computing device tonotify a user or other recipient that action is requested.

FIG. 4 is a flow diagram representing an example method 444 associatedwith an edge device in accordance with a number of embodiments of thepresent disclosure. The method 444 may be performed, in some examples,using a system and/or a device such as devices 100, 200, 300 and 102 and202, as described with respect to FIGS. 1-3.

At 446, the method 444 includes receiving, at an edge device comprisinga microcontroller, initial data associated with a user of a device or anapparatus monitored by the device from the device. The device and theedge device may be in communication with one another via wired orwireless connections such that the edge device and the device can sharedata with one another. For instance, the user may be a person or animalwearing or operating the device such as a human operating the device(e.g., a toothbrush), and the apparatus may be may an inanimate objectmonitored by the device such as floor monitored by the device (e.g., acleaning device) or an appliance monitored by the device.

The initial data received at the edge device can include sensor dataassociated with the user or apparatus that is received from a sensor incommunication with the device, hardware status of the device, or otherdata associated with a user of the device or apparatus monitored by thedevice. For instance, in an example where the device in communicationwith the edge device is a cleaning device, the initial data may includebattery levels, cleaning material levels, waste bin levels, etc.

At 448, the method 444 includes determining, at the edge device, whetherthe device is cleared for safe operation. The edge device can determine,for instance using the initial data, whether the device is safe tooperate. In the cleaning device example, a determination that the deviceis cleared for safe operation may be made when status updates indicatethe device is in working conditions, battery levels are sufficient,cleaning material is not leaking, the device is clear of obstructions,or waste bins are not full, among others. In contrast, a determinationthat the device is not cleared for safe operation may be made whenstatus updates indicate the device is not in working conditions, batterylevels are insufficient, cleaning material is leaking, the devicedetects obstructions, the device is sitting in undesired water, or wastebins are full, among others.

At 450, the method 444 includes transmitting an alert to an authorizedcomputing device responsive to a determination the device is not clearedfor safe operation. An alert can be sent via a message, call, etc. to amobile device, web browser, or other notification system, so anauthorized user can address the issue with the device. For instance, auser may clear obstructions from the path of a cleaning device.

The method 444, at 452, includes a determination that the device iscleared for safe operation, and at 454, the method 444 includesdetermining, at the edge device, an operation to run on the deviceresponsive to the determination that the device is cleared for safeoperation. The determination can be based on the initial data, datareceived from other sources including the user and/or other authorizedusers, previously collected data, or a combination thereof. Forinstance, in the cleaning device example, the edge device may receiveinput from a user of the device with respect to desired cleanlinesslevel, frequency of cleaning, etc. The edge device may receive inputfrom cloud storage including device manufacturer standards, battery lifeinformation, etc. Using the different inputs, a determination can bemade about a cleaning operation including, for instance, how muchcleaning material to dispense, frequency of cleaning, length of time fora particular cleaning where to clean, focus areas of cleaning, etc.

At 456, the method 444 includes transmitting, from the edge device tothe device, operational instructions for the device to start running theoperation, and at 458 includes receiving, from the device, data gatheredby a plurality of sensors in communication with the device while runningthe operation. For instance, the edge device can send instructions via awired or wireless connection to the device with respect to performingthe determined operation (e.g., task). While performing the task,sensors in communication with the device can gather data that can betransmitted to the edge device. In the cleaning device example, thesensor data may include dirt levels, reduced battery life levels,detected obstructions, etc.

At 460, the method 444 includes updating a machine learning modelassociated with the operation, at the edge device, based on the receivedsensor data. The received sensor data, in some examples, can be storedin cloud storage, temporarily on the device, on the edge device, or anycombination thereof. Using the sensor data, the machine learning modelcan self-learn to update and improve accuracy and efficiency of theoperational instructions. Along with the sensor data, other dataavailable to the edge device and associated machine learning model canbe used to update the machine learning model including, for instance,data from cloud storage including data associated with previous sensordata or other previously received data.

In some examples, updating the machine learning model comprises updatinga lifetime prediction of the device based on the received sensor dataand associated data in the cloud storage. For instance, in the cleaningdevice example, using manufacturer data, previous operational data(e.g., length of time, conditions, etc.), current and previous batterylife performance, etc., an estimation of remaining life of the cleaningdevice can be made and/or a suggested replacement timeline. The updatedmachine learning model can be stored to cloud storage, in some examples.

In some examples, the method 444 can include updating firmware of theedge device based on the updated machine learning model and the receivedsensor data. For instance, firmware can be updated to improveperformance of the edge device including improved operationalinstructions, which can improve performance of the device. In thecleaning device example, edge device firmware may be updated based onsensor data and or the updated machine learning model indicatingunderperformance of the device (e.g., insufficient cleaning material,etc.) or the edge device (e.g., insufficient monitoring of the device,etc.).

The method 444, in some examples, can include performing a physical taskat the edge device associated with the operational instructions. Forinstance, a physical task can be performed to aid in performance of theoperation by the device. For instance, in the cleaning device example,the edge device can include a reservoir of cleaning material to refillthe device. Based on operational instructions indicating a cleaningsurface of a particular size, the edge device can perform the physicaltask of filling the device with an appropriate amount of cleaningmaterial.

FIGS. 5A and 5B are flow diagrams representing an example methodassociated with an edge device in accordance with a number ofembodiments of the present disclosure. The edge device and the devicecan be in communication with one another via a wired connection,wireless connection, or a combination thereof. The method may beperformed, in some examples, using a system and/or a device such asdevices 100, 200, 300 and 102 and 202, as described with respect toFIGS. 1-3.

In the examples illustrated in FIGS. 5A and 5B, the device is atoothbrush, and the edge device is a docking station for the toothbrush.The terms “device” and “toothbrush” and the terms “edge device” and“docking station” may be used interchangeable with respect to FIGS. 5Aand 5B, but it should be understood a device that is not a toothbrushand an edge device that is not a docking station may perform tasks asdescribed herein.

The docking station can charge a battery of the toothbrush while thetoothbrush is connected to the docking station. The docking station caninclude a memory resource and/or a microcontroller for storing andprocessing data acquired by sensors associated with the toothbrush. Thedocking station can wirelessly connect the toothbrush to an additionaledge device (e.g., a user's mobile device, authorized user's mobiledevice) to facilitation notifications, configuration parameter settings,and progress tracking (e.g., via an application). The docking stationcan wirelessly connect the toothbrush to cloud storage, and in someexamples, the docking station can track a brush head life expectancyusing machine learning models. In some examples, the docking station caninclude a reservoir that supplies water, toothpaste, mouthwash, or otherliquids to the toothbrush. The docking station may sanitize the brushhead in some instance, for instance using ultraviolet light or heat.

The toothbrush can include brushing, flossing, and rinsing capabilities.In some examples, the toothbrush may be a hands-free mouthpiecetoothbrush. The toothbrush can include a buffer memory, sensors, anatomizer to dispense water, toothpaste, and/or other liquids, and asuction device for rinse the user's mouth before, during, and/or afterbrushing.

At 564, the toothbrush performs an initial scan. This initial scan caninclude, for instance, scanning the inside of a user's mouth using animage sensor. The toothbrush, for example, may be a mouthguard-shapedbrush that can scan or be in communication with a sensor that can scanthe user's mouth and teeth for obstructions.

At 566, the docking station clears the toothbrush for safe operation.For instance, the toothbrush can transmit its findings during the scanto the docking station, and if no obstructions are detected, thetoothbrush may be cleared. In other examples, the docking station maytrack the location of the toothbrush (e.g., using a location sensor onthe toothbrush) to determine how long the toothbrush has been away fromor with the docking station. For instance, if the toothbrush has beenaway from the docking station for a threshold period of time (e.g., 3hours), the edge device may alert an authorized user in case the user ofthe toothbrush is in need of help. If the location of the device andassociated length of times are within a threshold, the docking stationcan clear the toothbrush for safe operation.

At 568, the docking station determines an operation (e.g., program,task, etc.) to run on the toothbrush based on inputs it has received.The inputs, for example, can include personal information associatedwith the user of the toothbrush including age, cognitive level, advicefrom health care providers (e.g., dentists, orthodontists, etc.)including brushing lengths, bristle pressures, frequencies, userbrushing habits, images of teeth and gums, etc. For instance, thedocking station may determine based on the inputs that the user has anincrease in plaque and may determine a plaque removal program should beimplemented.

The method at 570 can include the docking station calculating a brushingtime based on the inputs/goals/program, etc. For instance, using theinputs and a machine learning model, a determination can be made that toreach the plaque removal goal based on current plaque levels andprevious history, a brushing regimen of three times per day for twominutes each time using a particular amount of toothpaste, for instanceas determined by the docking station at 572, is desirable. The dockingstation, at 572, may calculate fluid volumes for an atomizer that ispart of the toothbrush, and determine an amount to distribute to theatomizer from the docking station reservoir. The docking station can settimers and/or alarms on the toothbrush, the docking station, or both,for brushing length and frequency.

At 573, the docking station can transmit operational instructions (e.g.,signal) the toothbrush to turn on and commence the determined brushingprogram including instructing the toothbrush on brush times, fluidtoothpaste volume, fluid rinse volume, rinse cycle time, etc., and thetoothpaste can receive these inputs. At 574, the toothbrush can capturea “before” state of the teeth, gums, mouth, or any combination thereof.For instance, sensors in communication with the toothbrush can capturedata associated with the gums, teeth, and mouth, including for instancegum disease progress, tooth decay, plaque, etc. For instance, anultrasonic sensor located on the front of the toothbrush may detect andmonitor such data. This sensor data can be stored in a buffer memory ofthe toothbrush and transmitted as image data (e.g., shapes, images,textures, etc.) or non-image data at 579 to the docking station.

At 575, an atomizer of the toothbrush can distribute or “spray” thedetermined amount of fluid toothpaste onto the teeth or onto thetoothbrush, at 576, a timer can begin on the toothbrush, and at 577, thetoothbrush can commence brushing (e.g., ultrasonic cleaning) until thetimer stops. Sensor data collected during the brushing and rinsingportions can include texture data of the teeth and can be stored in abuffer memory of the toothbrush and transmitted to the docking stationat 579.

At 578, the toothbrush can capture an “after” state of the teeth, gums,mouth, or any combination thereof. For instance, sensors incommunication with the toothbrush can capture data associated with thegums, teeth, and mouth, including for instance gum disease progress,tooth decay, plaque, etc. This data may be the same data collectedduring the “before” state for use in comparisons at the docking station.This sensor data can be stored in a buffer memory of the toothbrush andtransmitted as image data (e.g., shapes, images, textures, etc.) ornon-image data at 579 to the docking station.

At 580, a rinse process can begin as illustrated in FIGS. 5A and 5B. At581 the toothbrush can activate the rinse cycle and the atomizer of thetoothbrush can spray water for the rinse at 582. The method, at 583, caninclude a suction function to remove water from the toothbrush and/orthe user's mouth. At 584, the toothbrush can capture an “after rinse”state of the teeth, gums, mouth, or any combination thereof. Forinstance, sensors in communication with the toothbrush can capture dataassociated with the gums, teeth, and mouth, including for instance gumdisease progress, tooth decay, plaque, etc. This data may be the samedata collected during the “before” and/or “after” states for use incomparisons at the docking station. This sensor data can be stored in abuffer memory of the toothbrush and transmitted as image data (e.g.,shapes, images, textures, colors etc.) or non-image data at 588 to thedocking station.

At 585, the toothbrush is returned to the docking station where thetoothbrush and its components (e.g., brush head, rinsing components,etc.) are scanned. The docking station can use previously collected andstored data to determine if any components of the toothbrush arereaching replacement levels, and this data can be transmitted to thedocking station at 588.

At 587, data received from the toothbrush at the docking station can bebacked up to a memory resource of the docking station or to cloudstorage at 589. At 586, the docking station can update firmware andmachine learning models (e.g., a tooth decay classification model, a gumdisease classification model, a brush head lifetime prediction model,etc.) based on the data received during performance of the brushingprogram and associated operational instructions. In some examples, themachine learning models can be updated in real time (e.g., as new datais received), periodically (e.g., twice per day), or as instructed by auser. For instance, an authorized user may access and application on hisor her mobile device and request updating of firmware and/or machinelearning models associated with the docking station.

Although specific embodiments have been illustrated and describedherein, those of ordinary skill in the art will appreciate that anarrangement calculated to achieve the same results can be substitutedfor the specific embodiments shown. This disclosure is intended to coveradaptations or variations of one or more embodiments of the presentdisclosure. It is to be understood that the above description has beenmade in an illustrative fashion, and not a restrictive one. Combinationof the above embodiments, and other embodiments not specificallydescribed herein will be apparent to those of skill in the art uponreviewing the above description. The scope of the one or moreembodiments of the present disclosure includes other applications inwhich the above structures and processes are used. Therefore, the scopeof one or more embodiments of the present disclosure should bedetermined with reference to the appended claims, along with the fullrange of equivalents to which such claims are entitled.

In the foregoing Detailed Description, some features are groupedtogether in a single embodiment for the purpose of streamlining thedisclosure. This method of disclosure is not to be interpreted asreflecting an intention that the disclosed embodiments of the presentdisclosure have to use more features than are expressly recited in eachclaim. Rather, as the following claims reflect, inventive subject matterlies in less than all features of a single disclosed embodiment. Thus,the following claims are hereby incorporated into the DetailedDescription, with each claim standing on its own as a separateembodiment.

What is claimed is:
 1. An edge device, comprising: a processingresource; and a memory resource in communication with the processingresource having instructions executable to: determine whether a devicein communication with the edge device is cleared for safe operation;responsive to a determination the device is not cleared for safeoperation, transmit an alert to an authorized computing device; andresponsive to a determination the device is cleared for safe operation,transmit operational instructions specific to a user of the device tothe device.
 2. The edge device of claim 1, wherein the memory resourceand the processing resource comprise a microcontroller.
 3. The edgedevice of claim 1, wherein the edge device receives data from the devicebefore the device performs the operational instructions, while thedevice performs the operational instructions, and after the deviceperforms the operational instructions.
 4. The edge device of claim 1,wherein the memory resource is a non-volatile memory comprisingphase-change memory or resistive random-access memory (RAM) or a doubledata rate synchronous dynamic RAM (DDR SDRAM) memory resource.
 5. Theedge device of claim 1, further comprising a phase-change memory orresistive random-access memory (RAM) memory resource.
 6. The edge deviceof claim 1, further comprising the edge device configured to: update amachine learning model associated with the device based on results ofperformance of the operational instructions by the device; and updatefirmware of the edge device based on the updated machine learning model.7. A system, comprising: a device, comprising: a processing resource; amemory resource in communication with the processing resource; an edgedevice in communication with the device, and comprising: amicrocontroller configured to: determine operational instructions forthe device; determine whether the device is cleared for safe operation;responsive to a determination the device is not cleared for safeoperation, transmit an alert to an authorized computing device; andresponsive to a determination the device is cleared for safe operation:transmit the operational instructions to the device; and update, using amachine learning model, the operational instructions in response toreceived input; and a second edge device in communication with thedevice and the first edge device and configured to enable dataclassification associated with the device and the first edge device. 8.The system of claim 7, further comprising a sensor in communication withthe processing resource, the memory resource, or both, the sensorconfigured to alert the edge device, the device, or both when athreshold event is detected.
 9. The system of claim 7, wherein thesecond edge device is further configured to facilitate habit clusteringand supervised learning of the machine learning model.
 10. The system ofclaim 7, wherein the second edge device is further configured tofacilitate transmission of the operational instructions, the updatedoperational instructions, or both, to cloud storage.
 11. The system ofclaim 7, further comprising a sensor in communication with theprocessing resource, the memory resource, or both, the sensor configuredto: detect data associated with a user of the device or an apparatusmonitored by the device; and write the data to the memory resource. 12.The system of claim 7, wherein the memory resource temporarily storesdata detected at a sensor in communication with the processing resource,the memory resource, or both, until the data detected is transmitted tothe edge device.
 13. The system of claim 7, wherein the microcontrolleris configured to determine the operational instructions comprises themicrocontroller configured to determine settings and threshold for thedevice to result in a particular outcome based on data received from asensor in communication with the processing resource, the memoryresource, or both.
 14. The system of claim 7, further comprising themicrocontroller to update the machine learning model used to update theoperational instructions based on a lifetime prediction of the devicebased on the received sensor data and associated data in the cloudstorage.
 15. The system of claim 7, further wherein the processingresource, the memory resource, or both, are configured to periodicallyshare data associated with the user of the device or the apparatusmonitored by the device with the microcontroller.
 16. A method,comprising: determining first data associated with a user of a devicebased on sensor data received from a sensor in communication with thedevice; determining, at an edge device in communication with a device,whether the device is cleared for safe operation; responsive to adetermination the device is not cleared for safe operation, transmittingan alert to an authorized computing device; and responsive to adetermination the device is cleared for safe operation: determining, atthe edge device and based on the first data, an operation to run on thedevice; transmitting, from the edge device to the device, operationalinstructions for the device to start running the operation; receiving,from the device, second data gathered by the sensor in communicationwith the device while running the operation and upon completion of theoperation; comparing the first data and the second data; and updatingthe operational instructions using a machine learning model and based onthe comparison.
 17. The method of claim 17, further comprising assessinghardware of the edge device and transmitting a result of the assessmentto the authorized computing device.
 18. The method of claim 17, furthercomprising: receiving at the edge device, from the device, a result ofcompletion of the operation; and transmitting the result of completionto cloud storage, the authorized computing device, or both.
 19. Themethod of claim 17, further comprising instructing hardware of the edgedevice to perform a physical task associated with the operationinstructions.
 20. The method of claim 17, further comprising receivingthird data associated with the user, the device, or both, from cloudstorage.